package com.fjec.activity.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fjec.activity.entity.BizActivitySeckill;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fjec.activity.entity.BizActivitySeckillCondition;
import com.fjec.activity.entity.BizActivitySeckillUser;
import com.fjec.activity.view.SecKillShopVO;
import com.fjec.activity.view.UserGiftVO;
import com.fjec.common.protocol.JsonResult;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 004.发布秒杀活动表 服务类
 * </p>
 *
 * @author admin
 * @since 2020-09-18
 */
public interface IBizActivitySeckillService extends IService<BizActivitySeckill> {
    int saveSecKill(List<UserGiftVO> userGiftVOList, Integer markCodes, String partInRoles, int startTime);

    Map<String, Object> getSecKillForMe(Page Page);

    Map<String, Object> getGivingForMe(Page page);

    void doKill(Long userId, Long secKillOrGivingId, String shopName) throws InterruptedException;

    List<Map<String, Object>> getMySeckillRecords(Long busiId);

    List<BizActivitySeckillCondition> getMySeckillCondition(Long busiId);

    List<Map<String, Object>> getSeckillUsersDetail(Long seckillId, Page page);

    Integer hasSeckillOrGiving(Long userId, Integer busiType, Long busiId);
}
